package rohyunji;

public class J29_BaseClass {

	/* 
	기본클래스 Base Class(재활용클래스)
	일부 인터페이스 가 많은 추상 메서드를 가지고 있는 경우 이것을 구현하는 크랠스는 
	이모든 메서드를 제정의 해야함 
	하지만 실제사용하는 메서드가 일부라면 이것은 지루한작업.
	
	인터페이스를 implements 해온 클래스는 모든 메소드 재정의 해야하는 문제점을
	GenericServlet이라는 클래스를 확장해서 단 하나의 메서드,service 메서드만 재정의
	해서 사용하면됨. 여기서 GenericServlet은 Base Class
	 */
	public static void main(String[] args) {
		// TODO Auto-generated method stub

	}

}

interface BadInterface
{
	void A();
	char B();
	String C();
	int D();
	boolean E();
	
}

class BadClass implements BadInterface
{

	@Override
	public void A() {
		// TODO Auto-generated method stub
		
	}

	@Override
	public char B() {
		// TODO Auto-generated method stub
		return 0;
	}

	@Override
	public String C() {
		// TODO Auto-generated method stub
		return null;
	}

	@Override
	public int D() {
		// TODO Auto-generated method stub
		return 0;
	}

	@Override
	public boolean E() {
		// TODO Auto-generated method stub
		return false;
	}
	
}


class GoodClass1 extends BadClass
{
	@Override
	public char B() {
		// TODO Auto-generated method stub
		return super.B();
	}
}
